mirror of
https://github.com/squirrelscan/skills.git
synced 2026-09-14 14:50:23 +08:00
bc4fe5b189
- new squirrelscan skill: install, auth, reports/publishing, credits, keys, MCP, config, troubleshooting (v1.0) - audit-website trimmed to the audit-and-fix workflow, points to squirrelscan skill for CLI concerns (v2.0) - repo is now a Claude Code plugin + marketplace (.claude-plugin/) and Cursor plugin (.cursor-plugin/), bundling hosted MCP - skills moved under skills/ for plugin auto-discovery - Makefile: Codex skills dir is ~/.agents/skills (not ~/.codex/skills) - README: per-tool install paths incl. Cursor MCP deeplink
51 lines
1.2 KiB
Makefile
51 lines
1.2 KiB
Makefile
CLAUDE_SKILLS_DIR := $(HOME)/.claude/skills
|
|
AGENTS_SKILLS_DIR := $(HOME)/.agents/skills
|
|
SKILL_DIRS := $(shell find ./skills -maxdepth 2 -name 'SKILL.md' -exec dirname {} \;)
|
|
DIST := dist/clawdhub
|
|
|
|
.PHONY: link unlink build clean
|
|
|
|
link:
|
|
@mkdir -p $(CLAUDE_SKILLS_DIR) $(AGENTS_SKILLS_DIR)
|
|
@for skill in $(SKILL_DIRS); do \
|
|
name=$$(basename $$skill); \
|
|
for dir in $(CLAUDE_SKILLS_DIR) $(AGENTS_SKILLS_DIR); do \
|
|
target=$$dir/$$name; \
|
|
if [ -L "$$target" ]; then \
|
|
rm "$$target"; \
|
|
fi; \
|
|
ln -s "$$(pwd)/skills/$$name" "$$target"; \
|
|
echo "Linked: $$name -> $$target"; \
|
|
done; \
|
|
done
|
|
|
|
unlink:
|
|
@for skill in $(SKILL_DIRS); do \
|
|
name=$$(basename $$skill); \
|
|
for dir in $(CLAUDE_SKILLS_DIR) $(AGENTS_SKILLS_DIR); do \
|
|
target=$$dir/$$name; \
|
|
if [ -L "$$target" ]; then \
|
|
rm "$$target"; \
|
|
echo "Unlinked: $$target"; \
|
|
fi; \
|
|
done; \
|
|
done
|
|
|
|
build:
|
|
@rm -rf $(DIST)
|
|
@for skill in $(SKILL_DIRS); do \
|
|
name=$$(basename $$skill); \
|
|
out=$(DIST)/$$name; \
|
|
mkdir -p $$out; \
|
|
cp $$skill/SKILL.md $$out/; \
|
|
for sub in references scripts; do \
|
|
if [ -d "$$skill/$$sub" ]; then \
|
|
cp -r $$skill/$$sub $$out/; \
|
|
fi; \
|
|
done; \
|
|
echo "Built: $$out"; \
|
|
done
|
|
|
|
clean:
|
|
rm -rf dist
|