f4a3cc104b
Release / build-and-release (push) Has been cancelled
v3.0.1 added .gitattributes rules that excluded both directories from git archive output, shrinking the claude.ai .skill bundle. But Claude Code's /plugin install fetches the SAME archive, so users installing v3.0.1 or v3.0.2 received a tarball with no plugin manifest and no skill files. Install appeared successful but the plugin was a useless empty shell. Proof: git archive v3.0.0 | grep 'skills/|\.claude-plugin/' | wc -l # 8 git archive v3.0.1 | grep 'skills/|\.claude-plugin/' | wc -l # 0 git archive v3.0.2 | grep 'skills/|\.claude-plugin/' | wc -l # 0 No issue reports yet because: - Cached pre-v3.0.1 installs keep working (it's the new-install path that's broken) - The breakage is under 24 hours old - Users invoking the skill via natural language go through skill-selector rather than /last30days slash command Also reverts v3.0.2's "skills": ["skills"] back to "./", the value that shipped in every tag from v2.1.0 through v3.0.0. That change was a misdiagnosis; the manifest wasn't in the tarball anyway so it had no effect on user-visible installs. Archive file count after fix: 97 (cap is 200, plenty of room). Follow-up: move claude.ai-specific bundle exclusions into scripts/build-skill.sh where they belong, rather than .gitattributes which cannot distinguish between the two distribution channels. Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
47 lines
1.6 KiB
Plaintext
47 lines
1.6 KiB
Plaintext
# Exclude non-runtime files from `git archive` output.
|
|
# Used by scripts/build-skill.sh to produce a claude.ai-upload-ready .skill file.
|
|
# See docs/plans/2026-04-14-001-fix-skill-upload-200-file-limit-plan.md.
|
|
|
|
# Anthropic canonical skill-packaging excludes
|
|
# (mirrors anthropics/skills/skills/skill-creator/scripts/package_skill.py)
|
|
__pycache__/ export-ignore
|
|
node_modules/ export-ignore
|
|
*.pyc export-ignore
|
|
.DS_Store export-ignore
|
|
evals/ export-ignore
|
|
|
|
# Dev, docs, test, and media - not needed at skill runtime
|
|
tests/ export-ignore
|
|
docs/ export-ignore
|
|
fixtures/ export-ignore
|
|
assets/ export-ignore
|
|
|
|
# NOTE: skills/ and .claude-plugin/ are NOT export-ignored here because
|
|
# Claude Code's /plugin install fetches this same git archive tarball.
|
|
# Removing those from the archive (as v3.0.1 did) silently breaks installs.
|
|
# claude.ai-bundle-specific exclusions live in scripts/build-skill.sh.
|
|
|
|
# Historical + repo-only manifests
|
|
SKILL-original.md export-ignore
|
|
SPEC.md export-ignore
|
|
TASKS.md export-ignore
|
|
test-run.log export-ignore
|
|
CONTRIBUTORS.md export-ignore
|
|
HERMES_SETUP.md export-ignore
|
|
release-notes.md export-ignore
|
|
CHANGELOG.md export-ignore
|
|
uv.lock export-ignore
|
|
|
|
# Platform adapters - skill-upload path is platform-agnostic
|
|
.agents/ export-ignore
|
|
.codex-plugin/ export-ignore
|
|
.hermes-plugin/ export-ignore
|
|
|
|
# CI workflows - repo-only, not needed at skill runtime
|
|
.github/ export-ignore
|
|
|
|
# Build config itself
|
|
.clawhubignore export-ignore
|
|
.gitignore export-ignore
|
|
.gitattributes export-ignore
|