fix(install): link skills where codex looks
Codex 0.148 discovers skills under $CODEX_HOME/skills only, so every skill in this repo was invisible to codex sessions — review sessions run by a codex reviewer reported review-pr as an unavailable skill and fell back to improvising a review. Both installers now link each skill into ~/.codex/skills as well. The nix module links one symlink per skill dir instead of recursive=true: codex skips any skill whose SKILL.md is itself a symlink, which is what a per-file link produces.
This commit is contained in:
@@ -17,7 +17,7 @@ nix/home.nix # home-manager module for NixOS machines
|
||||
flake.nix # exposes homeModules.default
|
||||
```
|
||||
|
||||
Skills are portable: only `name`+`description` frontmatter is required by any of the tools; Claude-only fields (`user-invocable`, `args`) are ignored elsewhere. Claude Code reads them from `~/.claude/skills`, Codex and Pi from `~/.agents/skills`, and opencode auto-loads both — so the two links cover all four. Cross-skill refs use root-relative paths (`tracker-common/COMMON.md`), so they resolve under either root.
|
||||
Skills are portable: only `name`+`description` frontmatter is required by any of the tools; Claude-only fields (`user-invocable`, `args`) are ignored elsewhere. Claude Code reads them from `~/.claude/skills`, Pi from `~/.agents/skills`, Codex from `~/.codex/skills` (and only there — `~/.agents/skills` is invisible to it), and opencode auto-loads the first two. Cross-skill refs use root-relative paths (`tracker-common/COMMON.md`), so they resolve under either root.
|
||||
|
||||
Context files differ: Claude Code and Codex support `@file` imports, so their entry files import the shared fragments by path. Pi and opencode do not, so each gets a single `AGENTS.md` generated by concatenating the same fragments — on NixOS the home-manager module builds it in the store, elsewhere `bin/link.sh` writes it (idempotent; set `MACHINE=name` to pick a `claude-md/machines/` profile, default is `default`).
|
||||
|
||||
@@ -30,7 +30,7 @@ git clone https://git.naps.pt/yolo/agent-skills.git ~/tea/agent-skills
|
||||
~/tea/agent-skills/bin/link.sh
|
||||
```
|
||||
|
||||
Symlinks each skill into `~/.claude/skills/` and `~/.agents/skills/`, commands into `~/.claude/commands/` and `~/.config/opencode/commands/`, hooks into `~/.claude/hooks/`, `claude-md/` fragments into `~/.claude/`, and generates `~/.pi/agent/AGENTS.md` and `~/.config/opencode/AGENTS.md` from the fragments. Idempotent; any pre-existing real dir (or non-generated AGENTS.md) is moved to `~/.agent-skills-backup/` (outside the discovery path, so it isn't picked up as a duplicate skill). Re-run after adding a skill.
|
||||
Symlinks each skill into `~/.claude/skills/`, `~/.agents/skills/` and `~/.codex/skills/`, commands into `~/.claude/commands/` and `~/.config/opencode/commands/`, hooks into `~/.claude/hooks/`, `claude-md/` fragments into `~/.claude/`, and generates `~/.pi/agent/AGENTS.md` and `~/.config/opencode/AGENTS.md` from the fragments. Idempotent; any pre-existing real dir (or non-generated AGENTS.md) is moved to `~/.agent-skills-backup/` (outside the discovery path, so it isn't picked up as a duplicate skill). Re-run after adding a skill.
|
||||
|
||||
Hooks still need one manual step: the `settings.json` snippet in `hooks/README.md`. Entry files are linked automatically — `entry/CLAUDE.md` and `entry/codex-AGENTS.md` hold the machine-local sections and `@import` the shared fragments, so both tools read the same rules with no copy and no drift.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user