Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions .github/scripts/pack-skill.py
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
"""Package the skill for distribution.

Produces dist/<skill>-<version>.zip containing a single top-level directory with
SKILL.md at its root — the layout the Claude Skills API expects on upload, and
what you get by unzipping into ~/.claude/skills or ~/.agents/skills.
SKILL.md at its root — the layout the skill upload dialog on claude.ai requires,
and what you get by unzipping into ~/.claude/skills or ~/.agents/skills.

A .skill copy is written alongside it. Nothing consumes that extension: neither
Claude Code nor Codex has a handler for it. It is byte-identical to the zip and
exists only as a friendlier download name.
A byte-identical .skill copy is written alongside it. The upload dialog accepts
either extension; .skill is the one it names first, so it is the friendlier
thing to hand someone.

The archive is reproducible — entries are sorted and every timestamp is pinned,
so the same input always yields the same sha256.
Expand Down Expand Up @@ -53,6 +53,6 @@
shutil.copyfile(zip_path, skill_path)

print(f"✔ {zip_path.relative_to(ROOT)} ({zip_path.stat().st_size:,} bytes, {len(files)} files)")
print(f"✔ {skill_path.relative_to(ROOT)} (identical bytes; no tool consumes this extension)")
print(f"✔ {skill_path.relative_to(ROOT)} (identical bytes; upload either one to claude.ai)")
for path in files:
print(f" {path.relative_to(src.parent)}")
58 changes: 0 additions & 58 deletions .github/scripts/packskill.py

This file was deleted.

11 changes: 6 additions & 5 deletions .github/scripts/release-notes.py
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,11 @@
ROOT = Path(__file__).resolve().parents[2]
version = json.loads((ROOT / ".codex-plugin/plugin.json").read_text())["version"]

print(f"""Unpack the archive into your skills directory:
print(f"""**Upload to Claude** — use `trek-plugin-dev-{version}.skill` in the skill
upload dialog on claude.ai. It accepts a `.zip` or `.skill` archive containing a
`SKILL.md`; both files here are byte-identical, so either works.

**Install locally** — unpack into your skills directory:

```bash
# Claude Code
Expand All @@ -19,7 +23,4 @@

Or skip the download and install from the repo instead — marketplace, vendoring
and per-repo setup are covered in the
[README](https://github.com/liketrek/Plugin-Skill#install).

The `.skill` file is byte-identical to the `.zip`. No tool consumes that
extension; it exists only as a friendlier download name.""")
[README](https://github.com/liketrek/Plugin-Skill#install).""")
26 changes: 0 additions & 26 deletions .github/scripts/releasenotes.py

This file was deleted.

Loading