feat: add scripts/build-skill.sh to produce claude.ai-upload-ready .skill

Wraps git archive with --prefix=last30days/ so the zip contains a single
top-level skill folder matching SKILL.md's name: frontmatter. Enforces:

- refuses to build with a dirty working tree (prevents shipping untracked changes)
- fails if zip exceeds 200 files (claude.ai's empirical upload cap)
- fails if zip contains more than one SKILL.md (avoids name: confusion)

Output at dist/last30days.skill (gitignored).
This commit is contained in:
Matt Van Horn
2026-04-14 12:19:28 -04:00
parent 2b506e90f5
commit 039fc89874
2 changed files with 41 additions and 0 deletions
+3
View File
@@ -22,3 +22,6 @@ htmlcov/
# Root vendor/ is accidental - real vendored client lives at scripts/lib/vendor/bird-search/
/vendor/
# build artifact from scripts/build-skill.sh
/dist/