setup(codex/hermes/opencode): mirror Claude skills so non-Claude agents are not skill-blind#165
Open
jamesbroadhead wants to merge 1 commit into
Open
Conversation
…ts see them too CODA bundles 43 skills under .claude/skills/, but only Claude Code consumed them. Codex, Hermes, and OpenCode didn't have the same Databricks knowledge on-disk under their home dirs. setup_gemini.py already did this for Gemini. This PR factors out the copy logic into a `mirror_claude_skills(target_dir, agent_name)` utility and calls it from setup_codex.py (-> ~/.codex/skills/), setup_hermes.py (-> ~/.hermes/skills/), and setup_opencode.py (-> ~/.local/share/opencode/skills/). Each agent's setup is idempotent across restarts (target dir is replaced, not appended). setup_gemini.py is left alone — its inline implementation already works. A separate cleanup can route Gemini through the same utility for consistency. This PR was prepared by Claude.
137b43b to
dbe68c0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
CODA bundles 43 skills under
.claude/skills/, but only Claude Code consumed them. Codex, Hermes, and OpenCode didn't have the same Databricks knowledge available under their home dirs.Adds a
mirror_claude_skills(target_dir, agent_name)utility and wires it into the three setup scripts that didn't already do this.setup_gemini.pyalready mirrored to~/.gemini/skills/; left alone in this PR to keep the diff minimal.Changes
utils.py— addmirror_claude_skills(target_dir, agent_name). Idempotent (replaces target). Skips if~/.claude/skills/is absent.setup_codex.py— mirror to~/.codex/skills/.setup_hermes.py— mirror to~/.hermes/skills/.setup_opencode.py— mirror to~/.local/share/opencode/skills/.Caveats
Whether each agent auto-discovers the mirrored skills depends on the agent. The mirror at least guarantees the markdown content is on-disk under the agent's home — so the agent can browse / load on demand and the user can reference them by path. Per-agent auto-discovery (manifest registration, hook wiring) is a follow-up where the upstream agent supports it.
A future cleanup pass can route
setup_gemini.pythrough the same helper for consistency.Test plan
python -m py_compile setup_codex.py setup_hermes.py setup_opencode.pyclean.from utils import mirror_claude_skillsimports cleanly.~/.codex/skills/,~/.hermes/skills/,~/.local/share/opencode/skills/exist and contain the expected skills afterrun_setup().This pull request and its description were written by Claude.