OpenHands / OpenHands/extensions

/iterate still fails to load in Codex because .codex-plugin symlink is lost during plugin install

Open
#257 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
148
Forks
90
Avg merge
1d 17h
Merged PRs (30d)
36

Description

Description

/iterate still cannot be loaded as a Codex plugin after the previous fix in #202.

The upstream marketplace snapshot appears correct: skills/iterate/.codex-plugin exists and is a symlink to .plugin.

However, after installing the plugin with Codex CLI, the installed cache no longer contains .codex-plugin, so Codex still fails to load the plugin.

Environment

  • Codex CLI version: 0.132.0
  • OS: Linux x86_64
  • Marketplace: https://github.com/OpenHands/extensions.git
  • Plugin: iterate@openhands-extensions

Steps to Reproduce

codex plugin marketplace upgrade openhands-extensions
codex plugin remove iterate@openhands-extensions
codex plugin add iterate@openhands-extensions

Then start a new Codex session or trigger plugin loading.

Observed Behavior

The marketplace snapshot contains the expected symlink:

~/.codex/.tmp/marketplaces/openhands-extensions/skills/iterate/.codex-plugin -> .plugin

But after installation, the plugin cache does not contain .codex-plugin:

~/.codex/plugins/cache/openhands-extensions/iterate/1.0.0/
  .plugin/
  README.md
  SKILL.md
  commands/
  references/

Codex then logs:

codex_core_plugins::loader: failed to load plugin: missing or invalid plugin.json plugin="iterate@openhands-extensions" path=~/.codex/plugins/cache/openhands-extensions/iterate/1.0.0

As a result, /iterate is not available in Codex.

Expected Behavior

iterate@openhands-extensions should install with a valid Codex manifest path:

~/.codex/plugins/cache/openhands-extensions/iterate/1.0.0/.codex-plugin/plugin.json

and /iterate should be registered as a usable command.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the failure with the listed Codex CLI marketplace upgrade, removal, and add commands. Inspect skills/iterate/.codex-plugin and its .plugin target, then verify the installed cache retains .codex-plugin/plugin.json and that /iterate loads as a registered command.

Written by the indexing model from the issue text.

Assessment

Domain
cli, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.