codex - 💡(How to fix) Fix Increase MAX_NAME_LEN from 64 to 128 for plugin-namespaced skill names

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

Error output:

Code Example

not available

---

Skipped loading 12 skill(s) due to invalid SKILL.md files.
 .../skills/enterprise-code-fix-proposal/SKILL.md: invalid name: exceeds maximum length of 64 characters
.../skills/gk-analysis-inconsistencies/SKILL.md: invalid name: exceeds maximum length of 64 characters
(and 10 more)

---

mkdir -p /tmp/test-plugin/.codex-plugin
   mkdir -p /tmp/test-plugin/skills/my-long-named-skill-proposal

---

echo '{"name": "my-very-long-organization-name-pipeline-assistant"}' > /tmp/test-plugin/.codex-plugin/plugin.json

---

cat > /tmp/test-plugin/skills/my-long-named-skill-proposal/SKILL.md << 'SKILL'
   ---
   name: my-long-named-skill-proposal
   description: A perfectly reasonable skill name that fails due to namespace length
   ---
   # My Skill
   SKILL

---

codex plugin marketplace add /tmp/test-plugin
   codex plugin add my-very-long-organization-name-pipeline-assistant@test-plugin

---

⚠ invalid name: exceeds maximum length of 64 characters
RAW_BUFFERClick to expand / collapse

What version of Codex CLI is running?

0.133.0

What subscription do you have?

Enterprise

Which model were you using?

gpt-5.4

What platform is your computer?

Darwin 25.5.0 arm64

What terminal emulator and version are you using (if applicable)?

iTerm2 / Terminal.app

Codex doctor report

not available

What issue are you seeing?

12 out of 21 skills from a marketplace plugin fail to load with "invalid name: exceeds maximum length of 64 characters".

The skill names themselves are only 18-27 characters. The issue is that plugin_namespace_for_skill_path() prepends the plugin's plugin.json "name" field (46 characters) plus a colon separator, making the fully-qualified name exceed 64 characters.

Example:

  • Plugin name (from plugin.json): "my-organization-pipeline-assistant" (34 chars)
  • Skill name (from SKILL.md): "organizational-code-fix-proposal" (24 chars)
  • Combined: "my-organization-pipeline-assistant:organizational-code-fix-proposal" (59 chars) — passes

But with longer org plugin names (46 chars):

  • Combined: 46 + 1 + 24 = 71 chars — FAILS

The 64-char limit (MAX_NAME_LEN in codex-rs/core-skills/src/loader.rs) validates the COMBINED namespace:skill-name string, not just the skill's base name. Enterprise plugin distribution systems that auto-generate plugin names from organizational identifiers consume most of the budget, leaving only 17 characters for skill names.

Error output:

⚠ Skipped loading 12 skill(s) due to invalid SKILL.md files.
⚠ .../skills/enterprise-code-fix-proposal/SKILL.md: invalid name: exceeds maximum length of 64 characters
⚠ .../skills/gk-analysis-inconsistencies/SKILL.md: invalid name: exceeds maximum length of 64 characters
(and 10 more)

The limit was reduced from 100 → 64 in PR #7915 to "align character limits to other harnesses." The CLI doesn't have the ChatGPT app's UI display constraints, so 64 is unnecessarily restrictive for CLI-only usage.

What steps can reproduce the bug?

  1. Create a directory structure for a local marketplace plugin:

    mkdir -p /tmp/test-plugin/.codex-plugin
    mkdir -p /tmp/test-plugin/skills/my-long-named-skill-proposal
  2. Write plugin.json with a long namespace:

    echo '{"name": "my-very-long-organization-name-pipeline-assistant"}' > /tmp/test-plugin/.codex-plugin/plugin.json
  3. Write a skill with a normal-length name:

    cat > /tmp/test-plugin/skills/my-long-named-skill-proposal/SKILL.md << 'SKILL'
    ---
    name: my-long-named-skill-proposal
    description: A perfectly reasonable skill name that fails due to namespace length
    ---
    # My Skill
    SKILL
  4. Register as a marketplace and enable:

    codex plugin marketplace add /tmp/test-plugin
    codex plugin add my-very-long-organization-name-pipeline-assistant@test-plugin
  5. Restart codex — skill is rejected:

    ⚠ invalid name: exceeds maximum length of 64 characters

    The combined name is: "my-very-long-organization-name-pipeline-assistant:my-long-named-skill-proposal" = 78 chars > 64

What is the expected behavior?

Proposed fix: Increase MAX_NAME_LEN from 64 to 128 in codex-rs/core-skills/src/loader.rs.

Alternative: Validate the base skill name and namespace prefix independently with separate limits.

Additional information

Additional information

  • The limit was introduced by reducing from 100 → 64 in PR #7915 (Dec 2025)
  • PR description said "aligned character limits to other harnesses" — likely the ChatGPT desktop app's UI constraints, which don't apply to CLI usage
  • All of OpenAI's official plugins (github.com/openai/plugins) use names under 30 chars, so this only surfaces with enterprise marketplace integrations
  • A one-line fix: change const MAX_NAME_LEN: usize = 64 to const MAX_NAME_LEN: usize = 128
  • Happy to submit a PR if the team agrees with the direction

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

codex - 💡(How to fix) Fix Increase MAX_NAME_LEN from 64 to 128 for plugin-namespaced skill names