diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 198906a..8fe909f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -86,6 +86,22 @@ jobs: npm install -g @anthropic-ai/claude-code claude plugin validate . + - name: Build web-uploadable skill archive + run: | + # claude.ai's web skill uploader needs SKILL.md at the archive root, + # so zip the *contents* of crowdsec/ (not the folder itself). + VERSION="${{ steps.ver.outputs.version }}" + ( cd crowdsec && zip -r "../crowdsec-skill-v${VERSION}.zip" . ) + + - name: Attach archive to the release + if: github.event_name == 'release' + env: + GH_TOKEN: ${{ github.token }} + run: | + VERSION="${{ steps.ver.outputs.version }}" + gh release upload "${{ github.event.release.tag_name }}" \ + "crowdsec-skill-v${VERSION}.zip" --clobber + - name: Commit bumped files run: | git config user.name "github-actions[bot]" diff --git a/README.md b/README.md index 9c200e8..3f9c562 100644 --- a/README.md +++ b/README.md @@ -59,6 +59,11 @@ Update later with: /plugin install crowdsec@claude-community ``` +**On Claude.ai (web):** download `crowdsec-skill-vX.Y.Z.zip` from the +[latest release](https://github.com/crowdsecurity/crowdsec-skill/releases/latest) +and upload it in the web skill uploader. (Use that asset — its `SKILL.md` sits +at the archive root, which the uploader requires.) + ## 💬 Example prompts Once installed, Claude picks the skill up whenever your prompt involves CrowdSec: