mirror of
https://github.com/Klerith/fernando-skills.git
synced 2026-09-14 18:19:53 +08:00
f586d66560
- Move skills into skills/engineering/ buckets (spec, spec-impl, setup-fernando-skills)
- Add scripts/{link-skills,list-skills,install-to-agent}.sh for Claude/Cursor/Codex/Antigravity
- Rewrite README.md in English with skills.sh quickstart, link to README-es.md
- Add LICENSE (MIT)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
36 lines
908 B
Bash
Executable File
36 lines
908 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Symlinks every SKILL.md folder in this repo into ~/.claude/skills,
|
|
# so Claude Code can load them as user-level skills.
|
|
|
|
REPO="$(cd "$(dirname "$0")/.." && pwd)"
|
|
DEST="$HOME/.claude/skills"
|
|
|
|
if [ -L "$DEST" ]; then
|
|
resolved="$(readlink -f "$DEST" 2>/dev/null || readlink "$DEST")"
|
|
case "$resolved" in
|
|
"$REPO"|"$REPO"/*)
|
|
echo "error: $DEST is a symlink into this repo ($resolved)." >&2
|
|
echo "Remove it (rm \"$DEST\") and re-run." >&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
fi
|
|
|
|
mkdir -p "$DEST"
|
|
|
|
find "$REPO/skills" -name SKILL.md -not -path '*/node_modules/*' -not -path '*/deprecated/*' -print0 |
|
|
while IFS= read -r -d '' skill_md; do
|
|
src="$(dirname "$skill_md")"
|
|
name="$(basename "$src")"
|
|
target="$DEST/$name"
|
|
|
|
if [ -e "$target" ] && [ ! -L "$target" ]; then
|
|
rm -rf "$target"
|
|
fi
|
|
|
|
ln -sfn "$src" "$target"
|
|
echo "linked $name -> $src"
|
|
done
|