feat(cli): ao skills link fans out to every installed runtime, not just Claude (age-d686g)

Bo found the gap: the command only linked ~/.claude/skills, but Codex reads
~/.codex/skills and AGY/Gemini reads ~/.gemini/skills — so Codex and AGY users
got nothing. Default now links into every runtime whose config dir exists under
$HOME (~/.claude, ~/.codex, ~/.gemini, ~/.cursor), matching link-skill --all;
--dest still overrides to a single dir. Falls back to ~/.claude/skills when no
runtime is detected. resolveTargetDests + 3 subtests (explicit/fan-out/fallback,
HOME-isolated); help guard extended to assert the Codex/AGY dirs are documented.
README + --help repositioned to the live-symlink-from-a-clone distinction across
runtimes (supersedes the reframe-only age-ivcba). E2E: --dry-run fans out to all
4 installed runtime dirs.

Non-destructive unchanged: a foreign real dir is a conflict, never clobbered.
This commit is contained in:
boshu
2026-07-10 18:38:00 -04:00
parent bc789aca68
commit 9d1b1ed2fb
4 changed files with 201 additions and 38 deletions
+1 -1
View File
@@ -4264,7 +4264,7 @@ ao skills link [flags]
**Flags:**
```
--dest string Destination skills dir (default ~/.claude/skills)
--dest string Link into this single dir instead of the auto-detected runtimes (default: every installed runtime — ~/.claude, ~/.codex, ~/.gemini, ~/.cursor)
-h, --help help for link
--json Emit machine-readable JSON
```