From 35194cd60cce59ccfb16b561fa2a8532824e4b15 Mon Sep 17 00:00:00 2001 From: megaproxy Date: Tue, 26 May 2026 18:37:57 +0100 Subject: [PATCH] release.sh: build + attach .mcpb bundle alongside the installer The McpPanel's "Download .mcpb" button opens the Forgejo release page, so the asset has to actually be there. release.sh now runs `pnpm run build:mcpb` and attaches `dist-mcpb/tiletopia.mcpb` as a second --asset to `tea releases create`. Closes B's mcpb-into-release follow-up. Next release tag will have a working one-click Claude Desktop install path. Co-Authored-By: Claude Opus 4.7 (1M context) --- scripts/release.sh | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/scripts/release.sh b/scripts/release.sh index cfb1cf7..4db8a5a 100644 --- a/scripts/release.sh +++ b/scripts/release.sh @@ -9,6 +9,11 @@ # exists at src-tauri/target/release/bundle/nsis/*.exe. # 3. `tea login list` shows the `rdx4` login is active. # +# Attaches two assets: +# - -setup.exe — NSIS installer +# - tiletopia.mcpb — Claude Desktop one-click MCP extension bundle +# (built by this script from src/ at release time) +# # Usage: # scripts/release.sh v0.1.0 # @@ -65,6 +70,18 @@ fi echo "Installer: $installer" echo "Size: $(du -h "$installer" | cut -f1)" +# Build + locate the .mcpb bundle. The McpPanel's "Download .mcpb" button +# opens this release page, so the asset has to be here for the click to work. +echo "Building .mcpb bundle…" +pnpm run build:mcpb >/dev/null +mcpb="dist-mcpb/tiletopia.mcpb" +if [[ ! -f "$mcpb" ]]; then + echo "build:mcpb finished but $mcpb is missing" >&2 + exit 1 +fi +echo "Bundle: $mcpb" +echo "Size: $(du -h "$mcpb" | cut -f1)" + # Tag and push if git rev-parse "$TAG" >/dev/null 2>&1; then echo "tag $TAG already exists locally — bail (delete it first if intentional)" >&2 @@ -73,13 +90,14 @@ fi git tag -a "$TAG" -m "Release $TAG" git push origin "$TAG" -# Create the release with the installer attached +# Create the release with the installer + .mcpb bundle attached tea releases create \ --login rdx4 \ --tag "$TAG" \ --title "$TAG" \ - --note "tiletopia $TAG. Download the .exe below, run it, accept SmartScreen (\"More info → Run anyway\") — installer isn't code-signed." \ - --asset "$installer" + --note "tiletopia $TAG. Download the .exe below, run it, accept SmartScreen (\"More info → Run anyway\") — installer isn't code-signed. tiletopia.mcpb is the Claude Desktop one-click install bundle (Settings → Extensions → drag and drop)." \ + --asset "$installer" \ + --asset "$mcpb" echo echo "✓ released $TAG → https://git.rdx4.com/megaproxy/tiletopia/releases/tag/$TAG"