diff options
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 44 |
1 files changed, 42 insertions, 2 deletions
@@ -1,10 +1,13 @@ SKILLS_DIR := $(HOME)/.claude/skills -SKILLS := c4-analyze c4-diagram +RULES_DIR := $(HOME)/.claude/rules +SKILLS := c4-analyze c4-diagram debug add-tests respond-to-review review-pr fix-issue security-check +RULES := $(wildcard claude-rules/*.md) .PHONY: install uninstall list install: - @mkdir -p $(SKILLS_DIR) + @mkdir -p $(SKILLS_DIR) $(RULES_DIR) + @echo "Skills:" @for skill in $(SKILLS); do \ if [ -L "$(SKILLS_DIR)/$$skill" ]; then \ echo " skip $$skill (already linked)"; \ @@ -15,9 +18,24 @@ install: echo " link $$skill → $(SKILLS_DIR)/$$skill"; \ fi \ done + @echo "" + @echo "Rules:" + @for rule in $(RULES); do \ + name=$$(basename $$rule); \ + if [ -L "$(RULES_DIR)/$$name" ]; then \ + echo " skip $$name (already linked)"; \ + elif [ -e "$(RULES_DIR)/$$name" ]; then \ + echo " WARN $$name exists and is not a symlink — skipping"; \ + else \ + ln -s "$(CURDIR)/$$rule" "$(RULES_DIR)/$$name"; \ + echo " link $$name → $(RULES_DIR)/$$name"; \ + fi \ + done + @echo "" @echo "done" uninstall: + @echo "Skills:" @for skill in $(SKILLS); do \ if [ -L "$(SKILLS_DIR)/$$skill" ]; then \ rm "$(SKILLS_DIR)/$$skill"; \ @@ -26,6 +44,18 @@ uninstall: echo " skip $$skill (not a symlink)"; \ fi \ done + @echo "" + @echo "Rules:" + @for rule in $(RULES); do \ + name=$$(basename $$rule); \ + if [ -L "$(RULES_DIR)/$$name" ]; then \ + rm "$(RULES_DIR)/$$name"; \ + echo " rm $$name"; \ + else \ + echo " skip $$name (not a symlink)"; \ + fi \ + done + @echo "" @echo "done" list: @@ -37,3 +67,13 @@ list: echo " - $$skill"; \ fi \ done + @echo "" + @echo "Rules:" + @for rule in $(RULES); do \ + name=$$(basename $$rule); \ + if [ -L "$(RULES_DIR)/$$name" ]; then \ + echo " ✓ $$name (installed)"; \ + else \ + echo " - $$name"; \ + fi \ + done |
