Compare commits

..
2 Commits
Author SHA1 Message Date
Matt Pocock 3cca18b368 Merge pull request #1025 from mattpocock/chore/link-skills-exclude-misc
link-skills: stop linking misc/ into local skill directories
2026-09-04 09:43:27 +01:00
Remote Box Agent 8666e05d64 link-skills: stop linking misc/ into local skill directories
misc/ is kept around but rarely used and not promoted (see its own
README), same spirit as deprecated/ being excluded already, just not
retired the same way. Local ~/.claude/skills and ~/.agents/skills
installs no longer pick it up. in-progress/ is untouched: it's public
on purpose and the local install is where its feedback loop runs.
2026-09-03 15:03:24 +00:00
2 changed files with 9 additions and 3 deletions
+1 -1
View File
@@ -20,6 +20,6 @@ Every `SKILL.md` is either user-invoked (`disable-model-invocation: true` plus `
[`ask-matt`](./skills/engineering/ask-matt/SKILL.md) is the router that maps every user-reachable skill and how they relate. The same trigger that re-syncs a docs page applies to it: whenever you add, rename, remove, or change how a user-reachable skill fits the flows, re-read `ask-matt`'s `SKILL.md` and update it so the map stays accurate: a new skill it never mentions, or a stale one it still routes to, is a router that lies.
To (re)link every skill into the local harness skill directories (`~/.claude/skills`, `~/.agents/skills`), run `scripts/link-skills.sh`. Each entry is a symlink into this repo, so a `git pull` keeps installed skills current; re-run the script after adding, removing, or renaming a skill.
To (re)link every skill outside `deprecated/` and `misc/` into the local harness skill directories (`~/.claude/skills`, `~/.agents/skills`), run `scripts/link-skills.sh`. Each entry is a symlink into this repo, so a `git pull` keeps installed skills current; re-run the script after adding, removing, or renaming a skill.
No em-dashes anywhere in this repo's prose (`SKILL.md` files, docs, `README.md`, `CHANGELOG.md`, ADRs, changesets, code comments). Where a sentence reaches for one, rewrite it instead with a comma, colon, period, parentheses, or a conjunction, whichever the sentence actually wants; never do a blind character substitution.
+8 -2
View File
@@ -15,14 +15,20 @@ set -euo pipefail
REPO="$(cd "$(dirname "$0")/.." && pwd)"
DESTS=("$HOME/.claude/skills" "$HOME/.agents/skills")
# Collect the repo's skills once, link into every destination.
# Collect the repo's skills once, link into every destination. `deprecated/`
# is retired, and `misc/` is kept around but rarely used and not promoted (see
# each bucket's own README): neither belongs in a daily-driver skill
# directory, so both are skipped here, same as everywhere else non-promoted
# skills are kept out. `in-progress/` IS still linked: it's public on purpose,
# feedback wanted, and this local install is exactly where that feedback loop
# runs.
names=()
srcs=()
while IFS= read -r -d '' skill_md; do
src="$(dirname "$skill_md")"
names+=("$(basename "$src")")
srcs+=("$src")
done < <(find "$REPO/skills" -name SKILL.md -not -path '*/node_modules/*' -not -path '*/deprecated/*' -print0)
done < <(find "$REPO/skills" -name SKILL.md -not -path '*/node_modules/*' -not -path '*/deprecated/*' -not -path '*/misc/*' -print0)
for DEST in "${DESTS[@]}"; do
# If $DEST is a symlink that resolves into this repo, we'd end up writing the