Build per-skill zips for the claude.ai skills upload - #24
Open
jagreehal wants to merge 1 commit into
Open
Conversation
The claude.ai skills upload (admin-settings/skills) rejects zips with more than 200 files, so the whole-repo release zip cannot be uploaded there. Add scripts/package_skills.sh, which packages each skill as a self-contained zip — vendoring the plays, templates, and data files its SKILL.md references at the same relative paths, and pruning MASTG tests not referenced by any MASVS mastg_tests list so every zip stays under the limit (largest: mobile-code-review at 199 files). Attach the zips to releases and document the upload path in the README. Fixes OWASP#23
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #23.
The claude.ai skills upload (Organization settings > Skills) rejects zips with more than 200 files, so neither the whole-repo zip nor the release asset can be uploaded there. The repo currently has no supported path for claude.ai organization admins who want these as skills rather than a Claude Code plugin.
This PR adds
scripts/package_skills.sh, which packages each of the 17 skills as a self-contained, upload-ready zip:plays/,templates/, anddata/files each SKILL.md references at the same relative paths, so references resolve identically to the plugin layout.mastg_tests:list (3 today, none cross-referenced), which keeps the largest skill —mobile-code-review— at 199 files. Every other skill is far smaller.Also:
release.ymlbuilds the zips and attaches them as release assets, mirroring howsecure-agent-playbook.zipships, so admins can download without cloning.Testing
Ran the script against main: all 17 zips build (2-199 files each); unzipped and verified each zip has
<skill-name>/SKILL.mdat the top level with all referenced play, template, and data paths present.