Removed marketplace namespace is incorrectly applied to personal and built-in skills
Summary
After removing the oh-my-mermaid plugin and marketplace, Codex still assigns the oh-my-mermaid: namespace to every skill under ~/.codex/skills, including built-in .system skills.
The affected SKILL.md files do not declare this namespace, and none of the directories are symlinks into the plugin. This appears to be a skill-source attribution issue at the skills-root level.
Environment
- Codex CLI:
0.145.0-alpha.18 - Surface: Codex desktop app / ChatGPT desktop app
- OS: macOS 27.0.0, arm64
Steps to reproduce
- Configure/install the
oh-my-mermaidmarketplace/plugin. - Place ordinary personal skills under
~/.codex/skills/<skill-name>/SKILL.md. - Remove the plugin and marketplace:
``console``
codex plugin marketplace remove oh-my-mermaid
- Fully quit the desktop app and restart it.
- Start a new task and inspect the injected available-skills list.
Actual behavior
Personal skills are still exposed as, for example:
oh-my-mermaid:journal-rank-lookup
oh-my-mermaid:academic-humanizer
Built-in skills are also incorrectly exposed with the same namespace, for example:
oh-my-mermaid:openai-docs
oh-my-mermaid:imagegen
oh-my-mermaid:skill-creator
The skill-root mapping points to the normal directories:
~/.codex/skills
~/.codex/skills/.system
The frontmatter contains only an unqualified name such as:
---
name: journal-rank-lookup
---
Expected behavior
Skills stored directly under ~/.codex/skills should not inherit the namespace of a removed marketplace. Built-in .system skills should retain their normal Codex/system attribution.
Diagnostics performed
codex plugin listreportsoh-my-mermaid@oh-my-mermaidas not installed before marketplace removal.codex plugin marketplace remove oh-my-mermaidsucceeds and removes the marketplace snapshot.oh-my-mermaidno longer appears in~/.codex/config.toml.~/.codex/.tmp/marketplaces/oh-my-mermaidno longer exists.- The desktop app was fully quit and restarted.
codex doctorreports healthy configuration and state databases, and no persistent background app-server.- The incorrect namespace remains in a newly injected skills catalog after restart.
Impact
The underlying skill files and scripts still execute from the correct personal paths, but the displayed/invoked names are misleading and appear to attribute unrelated personal and built-in skills to a third-party plugin.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗