link.sh 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. #!/usr/bin/env bash
  2. # Symlink this repo into ~/.claude/
  3. # Run once after cloning on a new machine.
  4. set -euo pipefail
  5. REPO="$(cd "$(dirname "$0")" && pwd)"
  6. CLAUDE="$HOME/.claude"
  7. mkdir -p "$CLAUDE"
  8. # Core config files
  9. ln -sf "$REPO/CLAUDE.md" "$CLAUDE/CLAUDE.md"
  10. ln -sf "$REPO/settings.json" "$CLAUDE/settings.json"
  11. # Agents and skills
  12. ln -sf "$REPO/agents" "$CLAUDE/agents"
  13. ln -sf "$REPO/skills" "$CLAUDE/skills"
  14. # Hooks
  15. mkdir -p "$CLAUDE/hooks"
  16. ln -sf "$REPO/hooks/session-start.sh" "$CLAUDE/hooks/session-start.sh"
  17. # GStack (submodule) — symlink from skills-external/ into ~/.claude/skills/
  18. # The submodule must be initialized first (done by install-plugins.sh)
  19. mkdir -p "$CLAUDE/skills"
  20. if [ -d "$REPO/skills-external/gstack" ]; then
  21. ln -sf "$REPO/skills-external/gstack" "$CLAUDE/skills/gstack"
  22. echo "✅ GStack symlinked from submodule"
  23. else
  24. echo "⚠️ GStack submodule not found — run: git submodule update --init"
  25. fi
  26. echo "✅ Symlinks created in ~/.claude/"
  27. echo " Next: bash install-plugins.sh"