aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile44
1 files changed, 42 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index e95e876..92933b7 100644
--- a/Makefile
+++ b/Makefile
@@ -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