Skip to content

hey skill install duplicates /hey in Codex by writing both ~/.agents/skills/hey and ~/.codex/skills/hey #287

Description

@crsmoore

Summary

On current Codex, hey skill install produces two identical Personal /hey skill entries. Basecamp’s basecamp skill install does not have this problem.

Environment

  • macOS (Apple Silicon)
  • HEY CLI 0.2.0 (Homebrew cask basecamp/tap/hey)
  • Codex with personal-skill discovery of both ~/.agents/skills and ~/.codex/skills (no name dedupe)

Reproduction

  1. Install/auth HEY CLI 0.2.0
  2. Run hey skill install
  3. Observe output: writes ~/.agents/skills/hey/SKILL.md, symlinks Claude, and copies to ~/.codex/skills/hey/SKILL.md
  4. In Codex, type /hey

Actual

Two indistinguishable Personal entries for Hey (same name/description). Codex loads both skill roots and does not dedupe by skill name.

Expected

One Personal /hey entry. Prefer the shared agents location only:

  • write ~/.agents/skills/hey/
  • symlink ~/.claude/skills/hey when Claude Code is present
  • do not also copy into ~/.codex/skills/hey when Codex already discovers ~/.agents/skills

Comparison (Basecamp does not duplicate)

basecamp skill install --help says it only copies to ~/.agents/skills/basecamp/ and symlinks Claude. It does not write ~/.codex/skills/basecamp. With that layout, Codex shows a single /basecamp.

hey skill install --help currently says it also “copies it for Codex when Codex is installed,” which is what creates the twin under today’s Codex discovery rules.

Suggested fix

Align HEY with Basecamp:

  1. Install only to ~/.agents/skills/hey (+ Claude symlink)
  2. Stop copying to ~/.codex/skills/hey (or make it opt-in / skip when ~/.agents/skills is already on Codex’s skill path)
  3. Optionally: if an old ~/.codex/skills/hey exists from prior installs, warn or offer to remove it so upgrades clean up duplicates

Happy to test a PR build.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions